package cn.buk.api.szkj.dto.eterm;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.ArrayList;
import java.util.List;

public class PnrInfo {
  /**
   * 记录编号
   */
  private String pnr;
  /**
   * 大编码
   */
  @JsonProperty(value = "b_pnr")
  private String bigPnr;

//  isEt 	String 	PNR是否出票，1 已出票 0 未出票
  @JsonProperty(value = "isEt")
  private String isEt;

  /**
   * 是否为团队编码
   */
  @JsonProperty(value = "is_team")
  private int isTeam;

  /**
   * 编码中是否包含证件信息
   */
  @JsonProperty(value = "HasNI")
  private int hasNI;

  /**
   * 编码中是否有婴儿
   */
  @JsonProperty(value = "HasINF")
  private int hasInf;

  /**
   * 编码中是否有儿童
   */
  @JsonProperty(value = "IsCHD")
  private int isChd;

  /**
   * REM项内容
   */
  @JsonProperty(value = "remark")
  private String remark;

  /**
   * OSI 项内容
   */
  @JsonProperty(value = "osi")
  private String osi;

  /**
   * 乘客数
   */
  @JsonProperty(value = "passengerCount")
  private int passengerCount;


  @JsonProperty(value = "office_code")
  private String officeCode;

  private String tl;

  @JsonProperty(value = "passenger")
  private List<PnrInfoPassenger> passengers;

  @JsonProperty(value = "lines")
  private List<PnrInfoFlight> flights;

  @JsonProperty(value = "price")
  private List<PnrInfoPrice> prices;

  @JsonProperty(value = "ticketList")
  private List<PnrInfoTicket> tickets;

  @JsonProperty(value = "fn")
  private List<PnrInfoFn> fns;

  /**
   * PNR原始内容
   */
  @JsonProperty(value = "rawData")
  private String pnrDetail;

  public String getPnr() {
    return pnr;
  }

  public void setPnr(String pnr) {
    this.pnr = pnr;
  }

  public String getBigPnr() {
    return bigPnr;
  }

  public void setBigPnr(String bigPnr) {
    this.bigPnr = bigPnr;
  }

  public int getIsTeam() {
    return isTeam;
  }

  public void setIsTeam(int isTeam) {
    this.isTeam = isTeam;
  }

  public int getHasNI() {
    return hasNI;
  }

  public void setHasNI(int hasNI) {
    this.hasNI = hasNI;
  }

  public int getHasInf() {
    return hasInf;
  }

  public void setHasInf(int hasInf) {
    this.hasInf = hasInf;
  }

  public int getIsChd() {
    return isChd;
  }

  public void setIsChd(int isChd) {
    this.isChd = isChd;
  }

  public String getRemark() {
    return remark;
  }

  public void setRemark(String remark) {
    this.remark = remark;
  }

  public String getOsi() {
    return osi;
  }

  public void setOsi(String osi) {
    this.osi = osi;
  }

  public int getPassengerCount() {
    return passengerCount;
  }

  public void setPassengerCount(int passengerCount) {
    this.passengerCount = passengerCount;
  }

  public String getOfficeCode() {
    return officeCode;
  }

  public void setOfficeCode(String officeCode) {
    this.officeCode = officeCode;
  }

  public String getTl() {
    return tl;
  }

  public void setTl(String tl) {
    this.tl = tl;
  }

  public List<PnrInfoPassenger> getPassengers() {
    return passengers;
  }

  public void setPassengers(List<PnrInfoPassenger> passengers) {
    this.passengers = passengers;
  }

  public List<PnrInfoFlight> getFlights() {
    return flights;
  }

  public void setFlights(List<PnrInfoFlight> flights) {
    this.flights = flights;
  }

  public List<PnrInfoPrice> getPrices() {
    return prices;
  }

  public void setPrices(List<PnrInfoPrice> prices) {
    this.prices = prices;
  }

  public String getPnrDetail() {
    return pnrDetail;
  }

  public void setPnrDetail(String pnrDetail) {
    this.pnrDetail = pnrDetail;
  }

  public String getIsEt() {
    return isEt;
  }

  public void setIsEt(String isEt) {
    this.isEt = isEt;
  }

  public List<PnrInfoTicket> getTickets() {
    if (tickets == null) {
      tickets = new ArrayList<>();
    }
    return tickets;
  }

  public void setTickets(List<PnrInfoTicket> tickets) {
    this.tickets = tickets;
  }

  public List<PnrInfoFn> getFns() {
    if (fns == null) {
      fns = new ArrayList<>();
    }
    return fns;
  }

  public void setFns(List<PnrInfoFn> fns) {
    this.fns = fns;
  }
}
